import React from 'react';
import Child1 from '../Child1';
import Child2 from '../Child2';
import GlobalContext from '../../util/GlobalContext';

export default class Parent extends  React.Component {
    constructor(props) {
        super(props);
        this.state = {
            name: '赵方',
            age: '24',
            sex:'男'
        }
    }

    render () {
        return (
            <div>
                {/* 生产者 provider 是所有子组件共享的（一个全局的store，保存了所有 state 和一个操作这些 state 的回调函数）。
                任何需要这些状态的组件都需要先和 provider 打交道。*/}
                <GlobalContext.Provider value={{
                    state: this.state,
                    setMessage: (value) => this.setState({name:value.name, age:value.age, sex:value.sex})
                }}> 
                    <Child1></Child1>
                    <Child2 type="123"></Child2>
                </GlobalContext.Provider>
            </div>
          )
    }
    
}

